package map;

/**rappresenta una chiave da inserire in una mappa
 * costituita da 2 parti:
 * <ul>
 *  <li>{@link #stratumKey}: indica lo strato cui il foregrounds identificato dalla chiave appartiene</li>
 *  <li>{@link #foreKey}: indica il codice del foreground</li>
 * </ul>
 * 
 * Per ottenere la chiave basta utilizzare il metodo {@link #getKey()} oppure {@link #toString()}
 * 
 * @author Koldar
 * @version 1.0
 * @Deprecated another old idea with no success
 */
@Deprecated
public class MapKey{
	
	//TODO fare la documentazione che al momento non ho voglia :P
	
	private int stratumKey;
	private String foreKey;

	public MapKey(int stratumkey,String forekey){
		this.stratumKey=stratumkey;
		this.foreKey=forekey;
	}
	
	@Override
	public String toString(){
		return String.format("%d%s",this.stratumKey,this.foreKey);
	}
	
	/**le 2 chiave sono uguali se la loro trasposizione in stringa e' uguale
	 * 
	 */
	@Override
	public boolean equals(Object k){
		if (k instanceof MapKey){
			return ((MapKey)k).toString().equals(this.toString());
		}
		return false;
	}
	
	
	public String getKey(){
		return this.toString();
	}

	/**
	 * @return the stratumKey
	 */
	public int getStratumKey() {
		return stratumKey;
	}

	/**
	 * @param stratumKey the stratumKey to set
	 */
	public void setStratumKey(int stratumKey) {
		this.stratumKey = stratumKey;
	}

	/**
	 * @return the foreKey
	 */
	public String getForeKey() {
		return foreKey;
	}

	/**
	 * @param foreKey the foreKey to set
	 */
	public void setForeKey(String foreKey) {
		this.foreKey = foreKey;
	}
	
}
